package com.wetao.flexiblerichtextview;

import android.content.Context;
import android.os.Handler;
import android.os.Message;
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.widget.Button;

import com.daquexian.flexiblerichtextview.FlexibleRichTextView;
import com.daquexian.flexiblerichtextview.FormatUtil;

public class Student01Activity extends AppCompatActivity implements View.OnClickListener, FlexibleRichTextView.OnFlexibleListener {
    private int resId_01 = R.mipmap.student_01;
    private int resId_02 = R.mipmap.student_02;
    private String str_0 = "<img src=\"" + resId_01 + "\" style=\"width:1111px;height:170px\" />";
    private String str_1 = "特大图<p style=\"line-height:1.6666666;\">设<img src=\"http://newpage-edu.oss-cn-beijing.aliyuncs.com/10394b4e4794430bb51d671553f5f89a.jpg\" style=\"height:24pt;\" />，则A，B间的关系为        （   ）</p>";
    private String str_2 = "<img src=\"http://newpage-edu.oss-cn-beijing.aliyuncs.com/1590721180109.jpg\"/>";
    private String str_3 = "<p style=\"white-space: pre-wrap;text-indent:0.0em;\">单选题类型测试，单选题类型测试，单选题类型测试，单选题类型测试，单选题类型测试，单选题类型测试，单选题类型测试，单选题类型测试，单选题类型测试，</p> <p>第二个p标签</p><p>第三个p标签</p>";
    private String str_4 = "<p><span style=\"font-family: Source Han Sans CN Medium;\">如图所示,终边落在直线</span><span style=\"font-family: Source Han Sans CN Medium;\"><i>y=</i></span><latex>$$ \\sqrt{3} $$</latex><span style=\"font-family: Source Han Sans CN Medium;\"><i>x</i></span><span style=\"font-family: Source Han Sans CN Medium;\">上的角的集合为</span><span style=\"font-family: Source Han Sans CN Medium;\"><i><u> </u></i></span><span style=\"font-family: Source Han Sans CN Medium;\"><u> </u></span><span style=\"font-family: Source Han Sans CN Medium;\"><i><u>  </u></i></span><span style=\"font-family: Source Han Sans CN Medium;\"><i>. </i></span></p><p style=\"text-align:center;text-indent:2.0em;\"><img src=\"http://newpage-edu.oss-cn-beijing.aliyuncs.com/3603d230a0dd46c4a06ca2b83ce4e7f7.jpg\" style=\"width:98px;height:84px;\" /></p>";
    private String str_5 = "<p style=\"white-space: pre-wrap;\">阅读下面<img src=\"http://newpage-edu.oss-cn-beijing.aliyuncs.com/3603d230a0dd46c4a06ca2b83ce4e7f7.jpg\" style=\"width:98px;height:84px;\" />文字，完成各题</p><p style=\"white-space: pre-wrap;text-indent:2.0em;\">孔子创立的等级森严的儒家伦理规范，直接影响了中国传统建筑的形制与布局。在儒家看来，建筑除其实用性的功能之外，更是“助人君顺阴阳明教化”的重要手段。北京故宫在遵守儒学规范的礼制方面体现得最为充分。其建筑按一条眀昰的中轴线布局，太和殿之宝座正好处在这条中轴线上。左为祖庙，右为社稷，其他建筑对称排布，组合成一个庞大的建筑群。这种井然有序、主次分明的建筑排列，正是等级森严的反映。</p><p style=\"white-space: pre-wrap;text-indent:2.0em;\">讲究中轴对称的平面布局和秩序井然的伦理营构，以组群的方式展开，形成中华传统建筑的尚大性格。这种“大”，主要体现在单体建筑的群体组合上。中囯建筑对群体组合可谓情有独钟，在设计上特别重视端方正直和群体的有机构成，着意于构筑群体组织有序的建筑之美。从群体到单体，从整体到局部，都十分注重尺度、体量的合理搭配，讲究空间秩序的巧妙组合，营构岀一种和谐圆融之美，使组群既能在远观时给人以整体性的恢宏气势和庄严感，又能在近观时给人以局部的审美情趣与亲和感。西方古典建筑如希腊的帕提农神庙、罗马的凯旋门等，则更注重于单体的外部造型和体量上的巨硕突兀。它们往往以超人的尺度，极力渲染那种对宗教的迷狂和敬畏之感。</p><p style=\"white-space: pre-wrap;text-indent:2.0em;\">中国传统建筑这种平面布局和群体组合方式，讲究建筑个体和群体组合与风水地理环境的和谐统一，在地面上热衷于建筑群体的全面铺排，象征严肃而有序的人间伦理。它鲜明地体现了中华古民的空间观念和审美意识，是中囯建筑不同于西方的重要特色。这种特色历经千年而不衰，从文化的角度审视，它既是高度重视现实人生、具有实用理性取向的文化精神的表现，也融渗了中国人的宇宙观、审美理想，充满了既理性又浪漫的艺术精神，展现出中华传统建筑的强烈个性和艺术魅力。</p><p style=\"white-space: pre-wrap;text-indent:2.0em;\">明堂、辟雍、坛庙、宗祠等礼制性建筑，则是中囯建筑高深豪迈的文化哲理的集中体现，这些建筑极具浓厚的政治色彩，反映了宗法礼仪和伦理规范，成为名副其实的哲学建筑。每一种形制都具有特殊的含义，在阴阳观念、风水意识等指导下，充分运用数理象征手法<sup>【注】</sup>，在设计营构上追求群体空间有机统一的整体和谐的境界。从总体到细部，从建筑形制到构图作法，这些礼制性建筑莫不表现出一种寓意深刻的数理关系，从而成为一种极具特色的古典模数理论，在理性与浪漫的交织中大放异彩</p><p style=\"white-space: pre-wrap;text-align:right;text-indent:2.0em;\">（摘编自刘月《中国传统建筑的美学神韵》）</p><p style=\"white-space: pre-wrap;\">【注】数理象征手法，在中国古文化中，数字及数字间的相互搭配组合都是有其特定象征意义的。</p>";
    private String str_6 = "<p style=\"line-height:1.5;\"><span style=\"font-family: Source Han Sans CN Medium;\">如图，在正五边形ABCDE中，AC与BE相交于点F，则∠AFE的度数为</span><span style=\"font-family: Source Han Sans CN Medium;\"><u> </u></span><span style=\"font-family: Source Han Sans CN Medium;\"><u>  </u></span><span style=\"font-family: Source Han Sans CN Medium;\"><u> </u></span><span style=\"font-family: Source Han Sans CN Medium;\">．</span></p><p style=\"line-height:1.5;\"><img src=\"http://newpage-edu.oss-cn-beijing.aliyuncs.com/2e5d08aaea7f482796466e59e3395832.png\" style=\"width:107px;height:100px;\" /></p><p style=\"line-height:1.5;\"><span style=\"font-family: Source Han Sans CN Medium;\">【考点】L3：多边形内角与外角；MM：正多边形和圆．菁优网版权所有</span></p><p style=\"line-height:1.5;\"><span style=\"font-family: Source Han Sans CN Medium;\">【专题】552：三角形．</span></p>";
    private String str_7 = "<table><tr><td>11111111</td><td>2222222</td></tr></table><p><span style=\"font-family: Times New Roman\">已知</span><span style=\"font-family: Times New Roman\">α</span><span style=\"font-family: Times New Roman\">是第四象限角</span><span style=\"font-family: Times New Roman\">,</span></p><p><span style=\"font-family: Times New Roman\">f(α)=</span><latex>$$ \\frac{\\mathrm{s}\\mathrm{i}\\mathrm{n}\\left(\\mathrm{\\alpha }\\text{-}\\frac{\\mathrm{\\pi }}{2}\\right)\\mathrm{c}\\mathrm{o}\\mathrm{s}\\left(\\frac{3\\mathrm{\\pi }}{2}+\\mathrm{\\alpha }\\right)\\mathrm{t}\\mathrm{a}\\mathrm{n}(\\mathrm{\\pi }-\\mathrm{\\alpha }\\text{)}}{\\mathrm{t}\\mathrm{a}\\mathrm{n}(-\\mathrm{\\alpha }\\text{-π)sin(-π-}\\mathrm{\\alpha }\\text{)}} $$</latex><span style=\"font-family: Times New Roman\">.</span></p><p><span style=\"font-family: Times New Roman\">(1)</span><span style=\"font-family: Times New Roman\">化简</span><span style=\"font-family: Times New Roman\">f(α);</span></p><p><span style=\"font-family: Times New Roman\">(2)</span><span style=\"font-family: Times New Roman\">若</span><span style=\"font-family: Times New Roman\">cos</span><latex>$$ \\left(\\mathrm{\\alpha }\\text{-}\\frac{3\\mathrm{\\pi }}{2}\\right) $$</latex><span style=\"font-family: Times New Roman\">=</span><latex>$$ \\frac{3}{5} $$</latex><span style=\"font-family: Times New Roman\">,</span><span style=\"font-family: Times New Roman\">求</span><span style=\"font-family: Times New Roman\">f(α)</span><span style=\"font-family: Times New Roman\">的值</span><span style=\"font-family: Times New Roman\">.</span></p>";
    private String str_8 = "数学题<img src=\"http://newpage-edu.oss-cn-beijing.aliyuncs.com/676e935ce3054ee4a2ff2126e211d365.jpg\" style=\"width:76px;height:80px;\" />题目";

    private static final String TAG = "Student01";
    private static final int HANDLER_FIRST_LOAD = 1;

    private StringBuilder stringBuilder = null;

    FlexibleRichTextView frtv_00;
    FlexibleRichTextView frtv_01;
    FlexibleRichTextView frtv_02;

    private Handler handler = new Handler() {
        @Override
        public void handleMessage(Message msg) {
            switch (msg.what) {
                case HANDLER_FIRST_LOAD:{
                    test_02(); //测试单个标签
                }break;
            }
        }
    };

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_student01);
        stringBuilder = new StringBuilder();
        frtv_00 = (FlexibleRichTextView) findViewById(R.id.frtv_00);
        frtv_00.setOnFlexibleListenerr(this);
        frtv_01 = (FlexibleRichTextView) findViewById(R.id.frtv_01);
        frtv_01.setOnFlexibleListenerr(this);
        frtv_02 = (FlexibleRichTextView) findViewById(R.id.frtv_02);
        frtv_02.setOnFlexibleListenerr(this);

        Button btn_page_1 = (Button) findViewById(R.id.btn_page_1);
        Button btn_page_2 = (Button) findViewById(R.id.btn_page_2);
        Button btn_page_3 = (Button) findViewById(R.id.btn_page_3);
        btn_page_1.setOnClickListener(this);
        btn_page_2.setOnClickListener(this);
        btn_page_3.setOnClickListener(this);
        //必须延时一点时间再加载数据，原因是html解析需要一点时间，所以要界面先显示再加载。
        handler.sendEmptyMessageDelayed(HANDLER_FIRST_LOAD, 50);
    }

    @Override
    protected void onResume() {
        super.onResume();
    }

    @Override
    public void onClick(View v) {
        switch (v.getId()) {
            case R.id.btn_page_1:{
                test_01();
            }break;
            case R.id.btn_page_2:{
                test_02();
            }break;
            case R.id.btn_page_3:{
                test_03();
            }break;
        }
    }

    private void test_01() {
        FlexibleRichTextView.load_time = System.currentTimeMillis();

        frtv_00.resetTextView();
        stringBuilder = new StringBuilder();
        String str_00 = FormatUtil.format_p_rnNum_all(str_0, 1);
        Log.i(TAG, "标签p：" + str_00);
        stringBuilder.append(str_00);
        frtv_00.setText(stringBuilder.toString());
        frtv_01.resetTextView();
        stringBuilder = new StringBuilder();
        String str_01 = FormatUtil.format_p_rnNum_all(str_1, 1);
        Log.i(TAG, "标签p：" + str_01);
        stringBuilder.append(str_01);
        frtv_01.setIsMovementMethod(true); //设置可滚动，查看测试数据，正式环境不要加这一句
        frtv_01.setText(stringBuilder.toString());
        frtv_02.resetTextView();
        stringBuilder = new StringBuilder();
        stringBuilder.append(str_2);
        frtv_02.setText(stringBuilder.toString());
    }

    private void test_02() {
        FlexibleRichTextView.load_time = System.currentTimeMillis();

        frtv_00.resetTextView();
        stringBuilder = new StringBuilder();
        stringBuilder.append(str_3);
        frtv_00.setText(stringBuilder.toString());
        frtv_01.resetTextView();
        stringBuilder = new StringBuilder();
        stringBuilder.append(str_4);
        frtv_01.setText(stringBuilder.toString());
        frtv_02.resetTextView();
        stringBuilder = new StringBuilder();
        stringBuilder.append(str_5);
        frtv_02.setText(stringBuilder.toString());
    }
    private void test_03() {
        FlexibleRichTextView.load_time = System.currentTimeMillis();

        frtv_00.resetTextView();
        stringBuilder = new StringBuilder();
        stringBuilder.append(str_6);
        frtv_00.setText(stringBuilder.toString());
        frtv_01.resetTextView();
        stringBuilder = new StringBuilder();
        stringBuilder.append(str_7);
        frtv_01.setText(stringBuilder.toString());
        frtv_02.resetTextView();
        stringBuilder = new StringBuilder();
        stringBuilder.append(str_8);
        frtv_02.setText(stringBuilder.toString());
    }

    @Override
    public void onComplete(FlexibleRichTextView view) {

    }
}
